
/**
 * Write a description of class HoofdMenu here.
 * 
 * @author (your name) 
 * @version (a version number or a date)
 */
public class HoofdMenu
{
    private MenuKiezer menu;
    private Manager manager;
    private KlantKeuzeMenu klantKeuzeMenu;
    private Supermarkt supermarkt;
    private SubmenuAdmin submenuAdmin;
    private Supermarktpaneel supermarktpaneel;
    
    public HoofdMenu(){
        supermarktpaneel = new Supermarktpaneel();
        maakMenu();
        manager = supermarktpaneel.leesUit();
        supermarkt = manager.getSupermarkt();
        klantKeuzeMenu = new KlantKeuzeMenu(supermarkt);
        
        submenuAdmin = new SubmenuAdmin(manager);
    }
    
    
    private void maakMenu() {
        menu = new MenuKiezer( "Bent u klant of admin?", "maak een keuze" );
        menu.addItem    ( "Admin"      );
        menu.addItem    ( "Klant"      );
        menu.addStopItem( "Stoppen"          );
    }
    
    public void toon() {
        int keuze = -1;
        TuiHelper.clear();
        while ( keuze != 0 ) {
            keuze = menu.getMenukeuze();
            switch ( keuze ) {
            case 1: 
                toonAdminMenu();
                break;
            case 2: 
                toonKlantMenu();
                break;
            case 0:
                TuiHelper.clear();
               
                break;
            default:
                System.out.println("Ongeldige keuze");
            }
        }
        System.out.println( "Tot ziens!" );
        supermarktpaneel.save(manager);
    }
    
    
    public void toonAdminMenu(){
        String naam = TuiHelper.stelVraagMetTekstAntwoord( "Vul hier je naam in: " );
        if ( manager.getNaam().equalsIgnoreCase(naam) ){
            String wachtwoord = TuiHelper.stelVraagMetTekstAntwoord( "Vul hier je wachtwoord in: " );
            if (manager.getWachtwoord().equals(wachtwoord)  ){
                System.out.println ("Inloggen gelukt!");
                TuiHelper.wacht(1500);
                manager.vasteLastenSysteem();
                manager.overDatum();
                submenuAdmin.toonAdminSubmenu();
            }
            else{
                System.out.println("Wachtwoord komt niet overeen met de naam");
                TuiHelper.drukafDrukEnterEnWachtOpEnter();
            }
        }
        else{
            System.out.println("Uw naam komt niet voor in onze Database");
            TuiHelper.drukafDrukEnterEnWachtOpEnter();
        }
    }
    
    public void toonKlantMenu(){
        klantKeuzeMenu.toonKlantKeuzeMenu();
    }  
}
